=========================================================================== BBS: The Abacus * HST/DS * Potterville MI Date: 04-21-93 (14:50) Number: 180 From: EARL MONTGOMERY Refer#: NONE To: ALL Recvd: NO Subj: REDUCE.BAS Conf: (35) Quick Basi --------------------------------------------------------------------------- '________O_/________________________| SNIP |______________________\_O_______ ' O \ | HERE | /O 'This file created by PostIt! v6.0. '>>> Start of page 1. '$INCLUDE: 'qb.bi' DIM inregs AS regtypex, outregs AS regtypex SCREEN 0: WIDTH 80: CLS ON ERROR GOTO errorroutine filespec$ = "*.CAP" + CHR$(0) PRINT STRING$(75, 196) inregs.ax = &H2F00 CALL interruptx(&H21, inregs, outregs) data.seg = outregs.es data.off = outregs.bx inregs.ax = &H4E00 inregs.dx = SADD(filespec$) inregs.ds = -1 CALL interruptx(&H21, inregs, outregs) cy = outregs.flags AND 1 IF cy = 0 THEN WHILE cy = 0 DEF SEG = data.seg f.name$ = "" i = data.off + 30 WHILE PEEK(i) <> 0 f.name$ = f.name$ + CHR$(PEEK(i)) i = i + 1 WEND DEF SEG PRINT f.name$ + " "; inregs.ax = &H4F00 CALL interruptx(&H21, inregs, outregs) cy = outregs.flags AND 1 WEND ELSE GOSUB nocaps END IF PRINT STRING$(75, 196) INPUT "File Name to Reduce "; infile$ infile$ = infile$ + ".cap" DEFINT A-Z SCREEN 13 REM sets all palettes to 0 OUT &H3C8, 0 FOR i% = 0 TO 767 OUT &H3C9, 0 NEXT DEF SEG = &HA000 BLOAD infile$, 0 ' Here, we create a string of spaces that will ' be the length of the file (16768 bytes). ' The string is then directly overwritten with ' POKE. ' DEF SEG DD$ = STRING$(16768, 32) i% = VARPTR(DD$) P& = 256& * PEEK(i% + 3) + PEEK(i% + 2) REM get palette info FOR i% = 0 TO 767 STEP 16 FOR L% = 0 TO 15 DEF SEG = &HA000 + 4000 Pix% = PEEK(i% + L%) DEF SEG POKE P&, Pix% P& = P& + 1 '>>> Continued on page 2 --- Maximus 2.01wb * Origin: Verbose Ink * Dallas * 214-437-0914 * V32b/HST (1:124/5125) SEEN-BY: 1/211 11/2 4 13/13 101/1 108/89 109/25 110/69 114/5 123/19 124/1 SEEN-BY: 153/752 154/40 77 157/2 159/100 125 430 575 950 203/23 209/209 SEEN-BY: 280/1 390/1 396/1 15 397/2 2230/100 2440/5 3603/20